#pragma once

#include <math.h>
#include <list>
#include <math.h>
using namespace std;

class Shape
{
public:
	static float acceleration;
	float speed;
	float cr, cg, cb;
	bool bStop;
    string name; 
public:
	Shape(void);
	virtual ~Shape(void);
	virtual void drawShape() = 0;
	virtual void fallDown(float t, list<Shape*> *) = 0;	//object fall down t seconds
	virtual void shift(float x, float y) = 0;
	void setColor(float ar, float ag, float at);
	bool isStop() const;
	virtual float getMinX() const = 0;
	virtual float getMaxX() const = 0;
	
};
